package com.mt.roll.report.vo;

import com.mt.roll.core.base.BaseVo;
import com.mt.roll.core.vo.PageVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

/**
 *
 * @author hy
 * @date 2021/03/07
 * @since 1.0
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@Builder
@ApiModel(value = "标签模板视图对象", description = "用于查询标签模板信息")
public class PrintModelVo extends BaseVo implements PageVo.ConvertVo {
    /**
     * 主键，自增
     */
    @ApiModelProperty(value = "主键", required = true, example = "1")
    @NotNull(message = "ID不能为空")
    private Long id;

    /**
     * 编码
     */
    @ApiModelProperty(value = "编码", required = true, example = "bqmb123")
    @NotBlank(message = "编码不能为空")
    private String code;

    /**
     * 名称
     */
    @ApiModelProperty(value = "标签模板名称", example = "标签模板")
    private String name;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注", example = "0")
    private String remark;

    /**
     * 添加时间
     */
    @ApiModelProperty(value = "添加时间", example = "2021-03-07T12:20:43")
    private LocalDateTime createTime;

    /**
     * 类型，0：模组标签，1：等级标签
     */
    @ApiModelProperty(value = "类型，0：模组标签，1：等级标签", example = "0")
    private Integer type;

    /**
     * 是否默认模板，0：否，1：是
     */
    @ApiModelProperty(value = "是否默认模板，0：否，1：是", example = "0")
    private Integer isDefault;

    /**
     * 是否要预览，0：否，1：是
     */
    @ApiModelProperty(value = "是否要预览，0：否，1：是", example = "1")
    private Integer isPreview;

    /**
     * 模板内容
     */
    @ApiModelProperty(value = "模板内容", example = "abc")
    private String content;
}
